﻿using Glorysoft.Auto.Xfw.Contract;
using System;
using System.Collections.Generic;
using System.Text;

namespace Glorysoft.EAP.Core.Entities.DB.Contract
{
   public interface IRPT_RUN_HISTORY_TEMPService : IAutoRegister
    {
        /// <summary>
        /// 根据主键ID 删除数据
        /// </summary>
        /// <param name="id">主键ID</param>
        /// <returns>执行结果</returns>
        int Delete(int id);
        /// <summary>
        /// 新增数据
        /// </summary>
        /// <param name="entity">实体对象</param>
        /// <returns>执行结果</returns>
        int Insert(RPT_RUN_HISTORY_TEMP entity);

        /// <summary>
        /// 获取所有数据
        /// </summary>
        /// <returns>数据集合</returns>
         IList<RPT_RUN_HISTORY_TEMP> SelectAll();

        /// <summary>
        /// 根据主键ID获取数据
        /// </summary>
        /// <param name="id"></param>
        /// <returns>实体对象</returns>
         RPT_RUN_HISTORY_TEMP SelectById(int id);


        /// <summary>
        /// 根据设备ID，LOTID，ProductID,获取数据集合
        /// </summary>
        /// <param name="eqpID">设备ID</param>
        /// <param name="lotID">LOTID</param>
        /// <param name="productID">ProductID</param>
        /// <returns>数据集合</returns>
         IList<RPT_RUN_HISTORY_TEMP> SelectByEQPID(string eqpID, string lotID, string productID);

        /// <summary>
        /// 更新数据信息
        /// </summary>
        /// <param name="entity">实体类对象</param>
        /// <returns>执行结果</returns>
         int Update(RPT_RUN_HISTORY_TEMP entity);

        /// <summary>
        /// 根据设备ID，LOTID，ProductID,获取数据对象
        /// </summary>
        /// <param name="eqpID">设备ID</param>
        /// <param name="lotID">LOTID</param>
        /// <param name="productID">ProductID</param>
        /// <returns>实体对象</returns>
         RPT_RUN_HISTORY_TEMP SelectByeqpID(string eqpID, string lotID, string productID);

         RPT_RUN_HISTORY_TEMP SelectByeqpIDAndLotID(string eqpID, string lotID, string productID);

         RPT_RUN_HISTORY_TEMP SelectByeqpIDAndLotIDProductID(string eqpID, string lotID, string productID);

    }
}
